home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 4
/
Aminet 4 - November 1994.iso
/
aminet
/
util
/
gnu
/
gnuplot_3_5.lha
/
gnuplot
/
docscheckdoc.c
< prev
next >
Wrap
C/C++ Source or Header
|
1993-05-12
|
2KB
|
94 lines
#ifndef lint
static char *RCSid = "$Id: checkdoc.c%v 3.38.2.70 1993/02/08 02:19:29 woo Exp woo $";
#endif
/*
* checkdoc -- check a doc file for correctness of first column.
*
* Prints out lines that have an illegal first character.
* First character must be space, digit, or ?, @, #, %,
* or line must be empty.
*
* usage: checkdoc [docfile]
* Modified by Russell Lang from hlp2ms.c by Thomas Williams
*
* Original version by David Kotz used the following one line script!
* sed -e '/^$/d' -e '/^[ 0-9?@#%]/d' gnuplot.doc
*
*/
#include <stdio.h>
#include <ctype.h>
#define MAX_LINE_LEN 256
#define TRUE 1
#define FALSE 0
main(argc,argv)
int argc;
char **argv;
{
FILE * infile;
infile = stdin;
if (argc > 2) {
fprintf(stderr,"Usage: %s [infile]\n", argv[0]);
exit(1);
}
if (argc == 2)
if ( (infile = fopen(argv[1],"r")) == (FILE *)NULL) {
fprintf(stderr,"%s: Can't open %s for reading\n",
argv[0], argv[1]);
exit(1);
}
convert(infile, stdout);
exit(0);
}
convert(a,b)
FILE *a,*b;
{
static char line[MAX_LINE_LEN];
while (fgets(line,MAX_LINE_LEN,a)) {
process_line(line, b);
}
}
process_line(line, b)
char *line;
FILE *b;
{
static long line_no=0;
line_no++;
switch(line[0]) { /* control character */
case '?': { /* interactive help entry */
break; /* ignore */
}
case '@': { /* start/end table */
break; /* ignore */
}
case '#': { /* latex table entry */
break; /* ignore */
}
case '%': { /* troff table entry */
break; /* ignore */
}
case '\n': /* empty text line */
case ' ': { /* normal text line */
break;
}
default: {
if (isdigit(line[0])) { /* start of section */
/* ignore */
} else
fprintf(b, "%ld:%s", line_no, line); /* output bad line */
break;
}
}
}